package com.project.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.gitee.sunchenbin.mybatis.actable.annotation.Column;
import com.gitee.sunchenbin.mybatis.actable.annotation.Table;
import com.gitee.sunchenbin.mybatis.actable.constants.MySqlTypeConstant;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author 
 */
@Data
@ApiModel(value = "回收员信息")
@TableName(value = "cms_recovery_member")
@Table(name = "cms_recovery_member", comment = "回收员信息")
public class CmsRecoveryMember implements Serializable {
    /**
     * 回收员ID
     */
    @TableId
    @ApiModelProperty(value = "回收员ID")
    @Column(type= MySqlTypeConstant.BIGINT, comment = "回收员ID", length = 11, isKey = true, isAutoIncrement = true,isNull = false)
    private Long recoveryMemberId;

    /**
     * 手机号
     */
    @ApiModelProperty(value = "手机号")
    @Column(comment = "手机号")
    private String mobile;

    /**
     * 昵称
     */
    @ApiModelProperty(value = "昵称")
    @Column(comment = "昵称")
    private String nickName;

    /**
     * 真实姓名
     */
    @ApiModelProperty(value = "真实姓名")
    @Column(comment = "真实姓名")
    private String realName;

    /**
     * 身份证号
     */
    @ApiModelProperty(value = "身份证号")
    @Column(comment = "身份证号")
    private String idCard;

    /**
     * 所在地区
     */
    @ApiModelProperty(value = "所在地区")
    @Column(comment = "所在地区")
    private String addressLocation;

    /**
     * 详细地址
     */
    @ApiModelProperty(value = "详细地址")
    @Column(comment = "详细地址")
    private String addressDetail;

    /**
     * 身份证正面
     */
    @ApiModelProperty(value = "身份证正面")
    @Column(comment = "身份证正面", length = 2000)
    private String idCardFront;

    /**
     * 身份证反面
     */
    @ApiModelProperty(value = "身份证反面")
    @Column(comment = "身份证反面", length = 2000)
    private String idCardBack;

    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    @Column(comment = "经度", type = MySqlTypeConstant.DOUBLE, length = 10, decimalLength = 6)
    private Double longitude;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    @Column(comment = "纬度", type = MySqlTypeConstant.DOUBLE, length = 10, decimalLength = 6)
    private Double latitude;

    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    @Column(comment = "创建人")
    private Long createUser;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @Column(comment = "创建时间", type = MySqlTypeConstant.DATETIME)
    private Date createTime;

    /**
     * 修改人
     */
    @ApiModelProperty(value = "修改人")
    @Column(comment = "修改人")
    private Long updateUser;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    @Column(comment = "修改时间", type = MySqlTypeConstant.TIMESTAMP)
    private Date updateTime;

    /**
     * 同意时间
     */
    @ApiModelProperty(value = "同意时间")
    @Column(comment = "同意时间", type = MySqlTypeConstant.DATETIME)
    private Date agreeTime;

    /**
     * 拒绝时间
     */
    @ApiModelProperty(value = "拒绝时间")
    @Column(comment = "拒绝时间", type = MySqlTypeConstant.DATETIME)
    private Date refuseTime;

    /**
     * 拒绝原因
     */
    @ApiModelProperty(value = "拒绝原因")
    @Column(comment = "拒绝原因")
    private String refuseContent;

    /**
     * 状态（1:待审核,2:通过,3:驳回,4:停用）
     */
    @ApiModelProperty(value = "状态（0:未申请,1:待审核,2:通过,3:驳回,4:停用）")
    @Column(comment = "状态（1:待审核,2:通过,3:驳回,4:停用）", defaultValue = "0")
    private Integer state;

    /**
     * 删除标志（-1:删除,1:正常）
     */
     @Column(comment = "删除标志（-1:删除,1:正常）", defaultValue = "1")
    private Integer status;

    private static final long serialVersionUID = 1L;

}